home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / 86xx / 8604.d64 / listing 3 (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  4KB  |  149 lines

  1. 10 .TAB(1,4;IN HYPRA-ASS: .LI 1,4
  2. 20 .STOP$C000;IN HYPRA-ASS: .BA $C000
  3. 30 ;*************************************
  4. 40 ; VERSCHACHTELTE SCHLEIFEN  ANWENDUNG
  5. 50 ; ALLGEMEINER BILDSCHIRMRAHMEN
  6. 60 ;*************************************
  7. 70 ;
  8. 80 ;LAGERPLATZ FUER DIE ZEICHEN: (HPYRA-ASS JEWEILS: .EQ CODE1 = $1B USW.)
  9. 90 .REMCODE1=$1B;ZEICHEN (null) = 4F
  10. 100 .REMCODE2=$1C;ZEICHEN USR = 77
  11. 110 .REMCODE3=$1D;ZEICHEN (null) = 50
  12. 120 .REMCODE4=$1E;ZEICHEN FN = 74
  13. 130 .REMCODE5=$1F;ZEICHEN THEN = 6A
  14. 140 .REMCODE6=$20;ZEICHEN (null) = 4C
  15. 150 .REMCODE7=$21;ZEICHEN AND = 6F
  16. 160 .REMCODE8=$22;ZEICHEN SQR = 7A
  17. 170 ;VEKTOREN FUER BILDCHIRM- UND FARB-RAM:
  18. 180 .REMSCREEN=$FB;BILDSCHIRMSTART
  19. 190 .REMCOLOR=$FD;FARBRAMSTART
  20. 200 ;ZAEHLER:
  21. 210 .REMHORIZ=$23;ZAEHLER FUER HORIZONTALE
  22. 220 .REMVERT=$24;ZAEHLER FUER VERTIKALE
  23. 230 ;DER FARBCODE WIRD NUR IM X-REGISTER GESPEICHERT
  24. 240 ;
  25. 250 ;DEFINITION EINES MAKRO: AKTUELL
  26. 260 ;IN HYPRA-ASS STATTDESSEN: .MA AKTUELL(SCREEN,COLOR)
  27. 270 .VERIFYAKTUELL(SCREEN,COLOR)
  28. 280  SPC(
  29. 290  CONT
  30. 300  DIMSCREEN
  31. 310  NEXTSCREEN
  32. 320  FORSCREEN+1
  33. 330  DIM#$00
  34. 340  NEXTSCREEN+1
  35. 350  SPC(
  36. 360  CONT
  37. 370  DIMCOLOR
  38. 380  NEXTCOLOR
  39. 390  FORCOLOR+1
  40. 400  DIM#$00
  41. 410  NEXTCOLOR+1
  42. 420  INPUT##$00
  43. 430 .PRINT#;IN HYPRA-ASS: .RT
  44. 440 ;
  45. 450 ;NUN GEHTS LOS:
  46. 460 ;
  47. 470 ;-------------- INITIALISIERUNG ------------
  48. 480 ;
  49. 490  DATA#$02;FARBCODE INS X-REGISTER
  50. 500  FOR#$4F;ALLE ZEICHEN IN DIE SPEICHER PACKEN
  51. 510  NEXTCODE1
  52. 520  FOR#$77
  53. 530  NEXTCODE2
  54. 540  FOR#$50
  55. 550  NEXTCODE3
  56. 560  FOR#$74
  57. 570  NEXTCODE4
  58. 580  FOR#$6A
  59. 590  NEXTCODE5
  60. 600  FOR#$4C
  61. 610  NEXTCODE6
  62. 620  FOR#$6F
  63. 630  NEXTCODE7
  64. 640  FOR#$7A
  65. 650  NEXTCODE8
  66. 660  FOR#$00;LSB BILDSCHIRMSTART
  67. 670  NEXTSCREEN
  68. 680  FOR#$04;MSB BILDSCHIRMSTART
  69. 690  NEXTSCREEN+1
  70. 700  FOR#$00;LSB FARBRAMSTART
  71. 710  NEXTCOLOR
  72. 720  FOR#$D8;MSB FARBRAMSTART
  73. 730  NEXTCOLOR+1
  74. 740  FOR#39;STELLENZAHL PRO ZEILE
  75. 750  NEXTHORIZ
  76. 760  FOR#23;ZEILENZAHL-2
  77. 770  NEXTVERT
  78. 780  INPUT##$00;ZAEHLER AUF NULL
  79. 790 ;
  80. 800 ;------------ NUN KOMMEN DIE JOBS: -------------
  81. 810 ;JOB 1: BESCHREIBEN DER OBEREN ZEILE
  82. 820  FORCODE1;1.ZEICHEN LINKS OBEN
  83. 830  NEXT(SCREEN),Y;EINSCHREIBEN
  84. 840  PRINT#;FARBCODE
  85. 850  NEXT(COLOR),Y;IN FARBRAMSTELLE SCHREIBEN
  86. 860  SYS;ZAEHLER ERHOEHEN
  87. 870 MARKE1 FORCODE2;2.ZEICHEN EINLADEN
  88. 880  NEXT(SCREEN),Y;EINE KLEINE SCHLEIFE
  89. 890  PRINT#
  90. 900  NEXT(COLOR),Y;FARBRAM BESCHREIBEN
  91. 910  SYS
  92. 920  LOADHORIZ;IST Y SCHON > 38 ?
  93. 930  INTMARKE1;WENN NICHT, WEITERMACHEN
  94. 940  FORCODE3;LETZTES ZEICHEN OBERE ZEILE
  95. 950  NEXT(SCREEN),Y;NACH RECHTS OBEN SCHREIBEN
  96. 960  PRINT#
  97. 970  NEXT(COLOR),Y;WIEDER FARBCODE EINTRAGEN
  98. 980  SYS
  99. 990 ;DAS WAR DIE ERSTE ZEILE. NUN KOMMEN DIE SEITENLINIEN
  100. 1000 ;JOB 2: BESCHREIBEN DER SEITEN
  101. 1010 ;
  102. 1020 MARKE2
  103. 1030 .POKEAKTUELL(SCREEN,COLOR);AUFRUF DES MAKRO
  104. 1035 ;IN HYPRA-ASS: ...AKTUELL(SCREEN,COLOR)
  105. 1040 ;DAMIT WERDEN DIE VEKTOREN SCREEN UND COLOR AKTUALISIERT
  106. 1050  FORCODE4;4.ZEICHEN FUER LINKEN RAND
  107. 1060  NEXT(SCREEN),Y;EINTRAGEN
  108. 1070  PRINT#;UND DEN FARBCODE
  109. 1080  NEXT(COLOR),Y;EBENFALLS
  110. 1090 MARKE3 SYS;ZAEHLER SCHNELL HOCHZAEHLEN
  111. 1100  LOADHORIZ;IST Y SCHON > 38 ?
  112. 1110  INTMARKE3;WENN NICHT, WEITERZAEHLEN
  113. 1120  FORCODE5;SONST 5.ZEICHEN FUER RECHTEN RAND
  114. 1130  NEXT(SCREEN),Y;EINTRAGEN
  115. 1140  PRINT#;UND FARBCODE
  116. 1150  NEXT(COLOR),Y;IN FARBRAM
  117. 1160  SYS
  118. 1170  SAVEVERT;MITZAEHLEN DER ZEILEN
  119. 1180  USRMARKE2;NAECHSTE ZEILE, WENN NOCH NICHT NULL
  120. 1190 ;ANSONSTEN SIND NUN BEIDE SEITENLINIEN VORHANDEN
  121. 1200 ;JOB 3: BESCHREIBEN DER LETZTEN ZEILE
  122. 1210 ;DAZU NOCHMAL MAKROAUFRUF ZUM AKTUALISIEREN DER VEKTOREN
  123. 1220 .POKEAKTUELL(SCREEN,COLOR);DIES IST DER AUFRUF
  124. 1225 ;IN HYPRA-ASS WIEDER: ...AKTUELL(SCREEN,COLOR)
  125. 1230 ;NUN KOMMT DER JOB:
  126. 1240  FORCODE6;6.ZEICHEN LINKS UNTEN
  127. 1250  NEXT(SCREEN),Y;EINSCHREIBEN
  128. 1260  PRINT#;WIEDER DEN FARBCODE
  129. 1270  NEXT(COLOR),Y;INS FARBRAM SCHREIBEN
  130. 1280  SYS;UND DEN ZAEHLER ERHOEHEN
  131. 1290 MARKE4 FORCODE7;7.ZEICHEN
  132. 1300  NEXT(SCREEN),Y;EINTRAGEN. KLEINE SCHLEIFE
  133. 1310  PRINT#
  134. 1320  NEXT(COLOR),Y;FARBRAM
  135. 1330  SYS
  136. 1340  LOADHORIZ;SCHON > 38 ?
  137. 1350  INTMARKE4;WENN NICHT, WEITERMACHEN
  138. 1360  FORCODE8;SONST LETZTES ZEICHEN
  139. 1370  NEXT(SCREEN),Y;NACH RECHTS UNTEN SCHREIBEN
  140. 1380  PRINT#;UND AUCH DEN FARBCODE
  141. 1390  NEXT(COLOR),Y;INS FARBRAM EINTRAGEN
  142. 1400 ;
  143. 1410 ;DAMIT IST DIE ARBEIT GETAN
  144. 1420 ;--------------- AUSGANG EINFACH DURCH BRK (MONITOR!) ---------
  145. 1430 ;
  146. 1440  OR
  147. 1450 ;
  148. 1460 .TO1,4;IN HYPRA-ASS: .SY 1,4
  149.